package main;

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;

import java.io.File;
import java.io.IOException;
import java.util.Arrays;
import java.util.List;


public class Reader {

    public Text createText(String filePath, String format) throws IOException{
        if(format.equals("html")) {
            Document doc = Jsoup.parse(new File(filePath), "UTF-8");
            Text text = new Text();

            text.setName(doc.title()); // название документа

            String synonyms = doc.select("div.synonyms").select("p").toString().replaceAll("<{1}/*p>{1}", "").trim();
            List<String> synonymsList = Arrays.asList(synonyms.replaceAll("<br>", " ").split("\\s+"));
            text.setSynonyms(synonymsList); //список синонимов
            text.setNumberOfSynonyms(synonymsList.size()); //количество синонимов

            String articleText = doc.select("div.text").select("p").toString().replaceAll("<{1}/*p>{1}", "").trim();
            List<String> stringsOfText = Arrays.asList(articleText.split("\\s*<br>"));
            for(int i = 0; i < stringsOfText.size(); i++) {
                stringsOfText.set(i, stringsOfText.get(i).trim());
            }
            text.setStringsOfText(stringsOfText);//строки статьи
            text.setNumberOfStrings(stringsOfText.size());//количество строк статьи

            return text;
        }
        return null;
    }
}
